perm filename TRUTH[C,JRA] blob
sn#021220 filedate 1973-01-19 generic text, type T, neo UTF8
00100 (CDEFUN FIND ('VARS 'PROP)
00200 (MAPC 'UNASSIGN VARS)
00300 (TRUE PROP))
00400
00500 (CDEFUN TRUE (PROP "OPTIONAL" (CONTEXT CONTEXT))
00600 (TRY-NEXT (GENERATE (TRUE1 PROP))))
00700
00800 (CDEFUN TRUE1 (PROP) "AUX"(SUB POS)
00850 (PRINT PROP)
00900 (RETPOS (FETCH PROP))
01000 (COND ((TRY-NEXT (FETCHM !"(MEANING-OF ,PROP !>SUB)))
01100 (TRUE1 SUB)))
01200 (CSETQ POS (FETCHM !"(SUFFICES-FOR ,PROP !>SUB)))
01300 :LP
01400 (COND ((TRY-NEXT POS) (TRUE1 SUB) (GO 'LP))))
01500
01600 (CDEFUN RETPOS (POS)
01700 (COND ((CDDR POS) (APPLY 'NOTE (CDDR POS))(AU-REVOIR))))
01800
00100 (IF-NEEDED T-O-EXISTS (EXISTS !>V !'E)
00200 (PROGBIND (CONS 'POS V)
00300 (CSETQ POS (GENERATE (TRUE1 (PREFIX '/!/; V E))))
00400 :LP
00500 (TRY-NEXT POS '(ADIEU))
00600 (AU-REVOIR T)
00700 (GO 'LP)))
00800
00900 (IF-NEEDED T-O-WHERE (WHERE !'G !'Q) "AUX"(P)
01000 (CSETQ P (GENERATE (TRUE1 G)))
01100 :LP
01200 (COND ((TRY-NEXT P) (TRUE1 Q) (GO 'LP))))
01300
01400 (IF-NEEDED T-O-NOT (NOT !'E)
01500 (COND ((TRUE E) (ADIEU))) (ADIEU T))
01600
01700 (IF-NEEDED T-O-AND (AND . !'L)
01800 (AND1 L))
01900
02000 (CDEFUN AND1 (L)
02100 (COND ((CDR L) "AUX"((P (GENERATE (TRUE1 (CAR L)))))
02200 :TN (TRY-NEXT P '(RETURN NIL))
02300 (AND1 (CDR L))
02400 (GO 'TN))
02500 (T (TRUE1 (CAR L)))))
02600
02700 (IF-NEEDED T-O-= (= !>X !>Y)
02800 (COND ((EQUAL X Y) (ADIEU T))))
02900
03000 (IF-NEEDED T-O-PROT (PROTECTED !'X)
03100 (COND ((CEVAL !"(PROTECTED ,X)) (ADIEU T))))
03200
03300 (IF-NEEDED M-O-P-AND (MEANING-OF (POSSIBLE (AND . !'L)) (AND . !<M))
03400 (CSETQ M ())
03500 (FOR-EACH-ELEMENT G L
03600 (CSETQ M (CONS !"(POSSIBLE ,G) M)))
03700 (CSETQ M (REVERSE M))
03800 (NOTE))
03900
04000 (IF-NEEDED M-O-P-WHERE
04100 (MEANING-OF (POSSIBLE (WHERE !'G !'Q)) (AND (POSSIBLE !,G) !,Q))
04200 (NOTE))
04300
04400 (IF-NEEDED M-O-P-EXISTS
04500 (MEANING-OF (POSSIBLE (EXISTS !>V !'G)) (EXISTS !,V (POSSIBLE !,G)))
04600 (NOTE))